package com.ts.conch.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ts.conch.common.result.CommonResult;
import com.ts.conch.entity.TsMenu;

import java.util.Map;

public interface ItsMenuService extends IService<TsMenu> {
    /**
     * @return int
     * @method create
     * create by: IDai
     * description: 创建后台菜单
     * create time: 2020-08-17 11:44
     * @Param: [menu]
     */
    CommonResult<?> create(TsMenu menu);

    /**
     * @return int
     * @method update
     * create by: IDai
     * description: 修改后台菜单
     * create time: 2020-08-17 11:44
     * @Param: [id, menu]
     */
    CommonResult<?> update(TsMenu menu);

    /**
     * @return com.lr.iboot.common.result.CommonResult<?>
     * @method getItem
     * create by: IDai
     * description: 根据ID获取菜单详情
     * create time: 2020-08-17 11:45
     * @Param: [id]
     */
    CommonResult<?> getItem(String id);

    /**
     * @return int
     * @method delete
     * create by: IDai
     * description: 根据ID删除菜单
     * create time: 2020-08-17 11:45
     * @Param: [id]
     */
    CommonResult<?> delete(String id);

    /**
     * @return java.util.List<com.lr.iboot.api.entity.LrMenu>
     * @method list
     * create by: IDai
     * description: 分页查询后台菜单
     * create time: 2020-08-17 11:45
     * @Param: [parentId, pageSize, pageNum]
     */
    CommonResult<?> list(Map<String, Object> params);

    /**
     * @return java.util.List<com.lr.iboot.api.entity.LrMenu>
     * @method treeList
     * create by: IDai
     * description: 树形结构返回所有菜单列表
     * create time: 2020-08-17 11:45
     * @Param: []
     */
    CommonResult<?> treeList();

    /**
     * @return int
     * @method updateHidden
     * create by: IDai
     * description: 修改菜单显示状态
     * create time: 2020-08-17 11:45
     * @Param: [id, hidden]
     */
    CommonResult<?> updateHidden(Map<String, Object> params);
}
